OpenMP
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
OpenMP est une interface de programmation pour le calcul parallèle sur architecture à mémoire partagée. Cette API est prise en charge par de nombreuses plateformes, incluant GNU/Linux, OS X et Windows, pour les langages de programmation C, C++ et Fortran. Il se présente sous la forme d'un ensemble de directives, d'une bibliothèque logicielle et de variables d'environnement.
OpenMP est portable et dimensionnable. Il permet de développer rapidement des applications parallèles à petite granularité en restant proche du code séquentiel.
La programmation parallèle hybride peut être réalisée par exemple en utilisant à la fois OpenMP et MPI.
Le développement de la spécification OpenMP est géré par le consortium OpenMP Architecture Review Board.
Contents
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Historique
OpenMP 1.0 pour Fortran a été publié en octobre 1997. En octobre 1998, la spécification pour le C/C++ a été publiée.
La version 2.0 pour Fortran a été disponible en 2000. La version 2.0 pour C/C++ en 2002.
La version 2.5 a été publiée en 2005, pour C/C++ et Fortran.
La version 4.0 date de juillet 2013cite-ref-4[4].
La version 4.5 date de novembre 2015cite-ref-5[5].
Particularités de chaque version
Implémentations
• Version 3.0
• GCC 4.3.1
• Compilateur Mercurium
• Intel Fortran and C/C++ versions 11.0 and 11.1 compilers, Intel C/C++ and Fortran Composer XE 2011 and Intel Parallel Studio.
• Sun Studio 12 update 1 has a full implementation of OpenMP 3.0cite-ref-7[7]
• Multi-Processor Computing (« MPC »)
• Version 3.1
• GCC 4.7cite-ref-openmp-gcc-wiki-8-0[8]
• Intel Fortran and C/C++ compilers 12.1cite-ref-9[9]
• Version 4.0
• Compilateurs Intel Fortran et C/C++ 15.0cite-ref-12[12]
• LLVM/Clang 3.7 (partiel)cite-ref-llvm-support-10-1[10]
Voir aussi
Références
cite-note-wikidata-59c2334af176acc417d5cbdaf2f7c7821165cfa6-11. riordonjames-riordon(en) James Riordon, « OpenMP® ARB Releases OpenMP 6.0 for Easier Programming », 14 novembre 2024 (consulté le 15 novembre 2024)
cite-note-22. ↑ 2008« OpenMP Application Program Interface, Version 3.0 », openmp.org, mai 2008 (consulté le 6 février 2014).
cite-note-33. ↑ 2011« OpenMP Application Program Interface, Version 3.1 », openmp.org, juillet 2011 (consulté le 6 février 2014).
cite-note-44. ↑ 2013« OpenMP 4.0 API Released », OpenMP.org, 26 juillet 2013 (consulté le 8 novembre 2019).
cite-note-55. ↑ 2015« OpenMP 4.5 Specs Released », OpenMP.org, 17 novembre 2015 (consulté le 8 novembre 2019).
cite-note-66. ↑ (en) « XL C/C++ for Linux Features » (consulté le 9 juin 2009).
cite-note-77. ↑ « Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle », Developers.sun.com (consulté le 14 août 2013).
cite-note-openmp-gcc-wiki-88. 2013« openmp - GCC Wiki », Gcc.gnu.org, 30 juillet 2013 (consulté le 14 août 2013).
cite-note-99. ↑ by-patrick-kennedy-on-fri-09-02-2011-11-282011submitted-by-patrick-kennedy-on-fri-09-02-2011-11-282011Submitted by Patrick Kennedy... on Fri, 09/02/2011 - 11:28, « Intel® C++ and Fortran Compilers now support the OpenMP* 3.1 Specification | Intel® Developer Zone », Software.intel.com, 6 septembre 2011 (consulté le 14 août 2013).
cite-note-llvm-support-1010. « Clang 3.7 Release Notes », llvm.org (consulté le 10 octobre 2015).
cite-note-1111. ↑ « GCC 4.9 Release Series - Changes », www.gnu.org.
cite-note-1212. ↑ « OpenMP* 4.0 Features in Intel Compiler 15.0 », Software.intel.com.
Liens externes
• site-officiel(en) Site officiel
• « Découverte de la programmation parallèle avec OpenMP », sur le site Connect : un tutoriel sous Linux
• Portail de l’informatique